import { BufferGeometry3D, Euler, Mesh3D, Vector3 } from 'feng3d-three';
import { DecalGeometry } from '../thirdparty/three/imports';

export class DecalGeometry3D extends BufferGeometry3D
{
    get _geometry()
    {
        if (!this.__geometry)
        {
            this.__geometry = new DecalGeometry(this.mesh._mesh, this.position, this.orientation, this.size);
        }

        return this.__geometry;
    }
    declare protected __geometry: DecalGeometry;

    mesh: Mesh3D;

    position: Vector3;

    orientation: Euler;

    size: Vector3;
}
